A telecommunications switch houses information related to a customer's service. A switch has tables within in. These tables contain the data used by various network components to deliver a certain variety of services to a customer. As customers change their services or as other demands may dictate, the various tables within the switches in a communications network must be updated to reflect a customer's preference.
For any number of reasons, switch-update transactions can become backlogged. A line can be severed or a switch's interface capacity surpassed. Transactions are then queued. During this time period, customers may invoke changes to their services from various sources. These changes are typically, but not necessarily, serial in nature. While it is understood that these transactions may be processed in parallel, a parallel solution may be unacceptable when interfacing with one switch when transactions are dependent on others. The final state of the switch will correspond to the last transaction that happened to be processed, possibly erroneously overwriting the correct state if processed in parallel without dependency management. Without dependency ordering, a customer's most recent change request may actually be processed before another change request that could possibly contradict the customer's intentions. Following this scheme, the final state of the switch may not correspond to the most recent change request, therefore forcing a serial solution in certain cases.
Updating a switch becomes difficult when transactions are dependent on other transactions completing first. To provide accurate accounting, billing, and servicing, dependent transactions must be processed after those upon which they depend irrespective of the order in which the transactions are received. Should a customer's preferences be processed out of order, problem diagnosis is displaced onto the consumer in the form of customer complaints. Eventually the problems may possibly be resolved by manually updating the switch. This form of regressive approach to accurate switch updating is time intensive, energy intensive, and costly.
Accordingly, there is a need for a system and method of updating switches accurately, especially where dependent transactions must be processed.